.feed-carousel {
    position: relative;
    overflow: hidden;
    min-height: 48px;

    .feed-carousel__viewport {
        display: flex;
        
        .viewport__scroller {
            flex: 1 1 auto;
            display: inline-block;
            white-space: nowrap;
            overflow: hidden;
            overflow-x: scroll;
            margin: 0px;
            
            .scroller__body {
                display: flex;
                flex-flow: row nowrap;
                justify-content: flex-start;
                
                .feed-carousel__item {
                    flex-shrink: 0;
                    display: flex;
                    flex-flow: row nowrap;
                    min-height: 50px;
                }
            }
        }
    }
    .feed-carousel__control {
        flex: 0 0 36px;
        position: relative;
        margin: 0;
        padding: 0;
        color: color("gray-darken-2");
        background: transparent;
        border: 0;
        outline: none;
        cursor: pointer;
        &:disabled {
            color: color("gray-lighten-2");
            &::before {
                opacity: 0;
            }
            &.nav-prev::after,
            &.nav-next::after {
                width: 0px;
            }
        }
        &:hover:not(:disabled) {
            color: theme-color("primary-lighten-1");
        }
        &::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            font-family: "materialicon";
            font-size: 36px;
            color: inherit;
            transform: translate3d(-50%, -50%, 0);
            opacity: 1;
            transition: opacity 0.3s;
        }
        &::after {
            position: absolute;
            content: "";
            left: 0;
            top: 0;
            bottom: 0;
            width: 36px;
            z-index: 10;
        }
        &.nav-prev {
            &::before {
                content: "\e408";
            }
            &::after {
                box-shadow: 15px 4px 10px -6px rgba(#fff, 1);
            }
        }
        &.nav-next {
            &::before {
                content: "\e409";
            }
            &::after {
                position: absolute;
                box-shadow: -15px 4px 10px -6px rgba(#fff, 1);
            }
        }
    }
    .feed-carousel__scroll-slider {
        position: absolute;
        bottom: 0px;
        left: 0;
        right: 0;
        margin: 0 36px;
        background: color("gray-lighten-5");
        border-radius: 10px;
        .scroll-slider__bar {
            min-width: 26px;
            height: 6px;
            background: rgba(0, 0, 0, 0.2);
            border-radius: 10px;
            cursor: ew-resize;
        }
    }
    .feed-carousel__loading {
        position: relative;
        width: 120px;
        min-height: 60px;
        .circular-progress {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }
    }
}
